/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package handlers;


import javabeans.UsuarioForm;
import org.hibernate.HibernateException;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
import org.hibernate.classic.Session;
import org.hibernate.SessionFactory;


/**
 *
 * @author Juan Martínez
 */


public class HandlerUsuario {

    /**
     * Variable que guarda  los datos de la sesion iniciada.
     */
    private SessionFactory sessionFactory;

    /**
     * Constructor que inicia la sesion con Usuario.
     */
    public HandlerUsuario(){
        try{

            sessionFactory= new Configuration().configure().buildSessionFactory();

        }catch(HibernateException e){
            e.printStackTrace();
        }
    }
    /**
     * Este método inserta los datos del usuario qwue se está registrando.
     * 
     * @param usuario
     * @param password
     * @param nombre
     * @param apellidos
     * @param pais
     * @param provincia
     * @param poblacion
     * @param direccion
     * @param dni
     * @param fechaNac
     * @param email
     */
    public void registro(String usuario, String password, String nombre, String apellidos, String pais, String provincia,
            String poblacion, String direccion, String dni, String fechaNac, String email){

        try{
        Session session= sessionFactory.openSession();

        Transaction tx= session.beginTransaction();


        UsuarioForm usu= new UsuarioForm();

        usu.setUsuario(usuario);
        usu.setPassword(password);

        usu.setNombre(nombre);
        usu.setApellidos(apellidos);

        usu.setPais(pais);
        usu.setProvincia(provincia);
        usu.setPoblacion(poblacion);
        usu.setDireccion(direccion);

        usu.setDni(dni);
        usu.setFechaNac(fechaNac);
        usu.setDni(dni);

        System.out.print("EA");
        session.save(usu);

        tx.commit();

        session.close();

        }catch (HibernateException e){
            e.printStackTrace();
        }
    }
}
